package com.geostar.constructionland.common.entity.statistics;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.geostar.constructionland.common.enums.QueryType;
import com.geostar.constructionland.common.enums.ResultType;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * @Author makoto_zhu
 * @Date 2020-11-18 03:07:49
 * @Description
 **/
@Data
@Accessors(chain = true)
@ToString
@TableName("UNIFIED_DATAQUERY_CONFIG")
public class UnifiedDataQueryConfig {
    // 32位主键id
    @TableId(type = IdType.ASSIGN_UUID)
    @ApiModelProperty("主键")
    private String id;
    //
    @TableField
    @ApiModelProperty("自定义的查询名，通过该参数来执行查询")
    private String uniqueQueryId;
    //
    @TableField
    @ApiModelProperty("查询配置类型（目前支持SQL和TABLE两种）")
    private QueryType type;
    // 查询参数
    @TableField
    @ApiModelProperty("查询参数")
    private String params;
    // 修改时间
    @TableField
    @ApiModelProperty("修改时间")
    private Date modifiedTime;
    // 用途描述
    @TableField
    @ApiModelProperty("用途描述")
    private String describeInfo;
    // 返回类型 (目前仅返回JSON，后续将支持返回HTML)
    @TableField
    @ApiModelProperty("返回类型 (目前仅返回JSON，后续将支持返回HTML)")
    private ResultType resultType;
    // 精度
    @TableField
    @ApiModelProperty("精度")
    private Integer precisionVal;

    // 查询sql
    @TableField
    @ApiModelProperty("查询sql")
    private String sqlVal;

    // 查询表名
    @TableField
    @ApiModelProperty("查询表名")
    private String tableName;
    // 查询字段
    @TableField
    @ApiModelProperty("查询字段")
    private String fieldName;
    // html模板
    @TableField
    @ApiModelProperty("html模板")
    private String htmlTemplate;
}
